<template>
  <el-menu class="el-menu-demo" mode="horizontal" background-color="#334157" text-color="#fff" active-text-color="#fff">
    <el-button class="buttonimg">
      <img class="showimg" :src="collapsed?imgsq:imgshow" @click="toggle(collapsed)">
    </el-button>
    <el-submenu index="2" class="submenu">
      <template slot="title">欢迎：{{user.userName}}</template>
      <!-- <template slot="title">超级管理员</template> -->
      <el-menu-item index="2-1">设置</el-menu-item>
      <el-menu-item @click="exit()" index="2-2">退出</el-menu-item>
    </el-submenu>
  </el-menu>
</template>
<script>
  export default {
    name: 'top',
    data() {
      return {
        collapsed: true,
        imgshow: require('@/assets/img/show.png'),
        imgsq: require('@/assets/img/sq.png'),
        user: {}
      }
    },
    // 获得用户信息，用于显示用户名
    created() {
      this.user = JSON.parse(localStorage.getItem('user'))
    },
    methods: {
      // 退出登录
      exit() {
        this.$confirm('退出登录, 是否继续?', '提示', {
            confirmButtonText: '确定',
            cancelButtonText: '取消',
            type: 'warning'
          })
          .then(() => {
            setTimeout(() => {
              //清除storage操作
              window.onbeforeunload=function(e){
                var storage= window.localStorage;
                storage.clear();
              }
              this.$router.push({
                path: '/login'
              })
              this.$message({
                type: 'success',
                message: '已退出登录!'
              })
            }, 1000)
          })
          .catch(() => {
            this.$message({
              type: 'info',
              message: '已取消'
            })
          })
      },
      // 切换显示
      toggle(showtype) {
        this.collapsed = !showtype
        this.$root.Bus.$emit('toggle', this.collapsed)
      }
    }
  }

</script>
<style scoped>
  .el-menu-vertical-demo:not(.el-menu--collapse) {
    border: none;
  }

  .submenu {
    float: right;
  }

  .buttonimg {
    height: 60px;
    background-color: transparent;
    border: none;
  }

  .showimg {
    width: 26px;
    height: 26px;
    position: absolute;
    top: 17px;
    left: 17px;
  }

  .showimg:active {
    border: none;
  }

</style>
